Product Code Database
Example Keywords: modern warfare -stocking $74-145
   » » Wiki: Cascaded Integrator–comb Filter
Tag Wiki 'Cascaded Integrator–comb Filter'.
Tag

In digital signal processing, a cascaded integrator–comb (CIC) is a computationally efficient class of finite impulse response (FIR) filter that chains N number of and pairs (where N is the filter's order) to form a decimator or . In a decimating CIC, the input is first fed through N integrator stages, followed by a down-sampler, and then N comb stages. An interpolating CIC (e.g. Figure 1) has the reverse order of this architecture, but with the down-sampler replaced with a zero-stuffer (up-sampler). Donadio, Matthew (2000) CIC Filter Introduction "Hogenauer introduced an important class of digital filters called 'Cascaded Integrator-Comb', or 'CIC' for short (also sometimes called 'Hogenauer filters').


Operation
CIC filters were invented by Eugene B. Hogenauer in 1979 (published in 1981), and are a class of FIR filters used in multi-rate digital signal processing.

Unlike most FIR filters, it has a down-sampler or up-sampler in the middle of the structure, which converts between the high sampling rate of f_s used by the integrator stages and the low sampling rate of \tfrac{f_s}{R} used by the comb stages.


Transfer function
At the high sampling rate of a CIC's transfer function in the is:

\begin{align}
 H(z) &=\left [ \sum_{k=0}^{RM-1}z^{-k} \right ] ^N \\
      &= \left ( \frac{1-z^{-RM}}{1-z^{-1}} \right ) ^N
     
\end{align}

where:

R is the decimation or interpolation ratio,
M is the number of samples per stage (usually 1 but sometimes 2), and
N is the order: the number of comb-integrator pairs.
* The numerator comes from multiplying N negative feedforward comb stages (each is simply multiplication by 1-z^{-RM} in the z-domain).
* The denominator comes from multiplying N integrator stages (each is simply multiplication by \tfrac{1}{1-z^\text{-1}} in the z-domain).


Integrator–comb is simple moving average
An integrator–comb filter is an efficient implementation of a simple 1-order moving-average FIR filter, with division by RM omitted. To see this, consider how a simple moving average filter can be implemented recursively by adding the newest sample xn to the previous result yn-1 and subtracting the oldest sample

\begin{align}
 y[n] &= \sum_{k=0}^{RM-1} x[n-k] \\
 y[n] &= y[n-1] + \underbrace{x[n] - x[n-RM]}_{\text{comb filter }c[n]}.
     
\end{align}

The second equality corresponds to a comb filter that gets integrated


Cascaded integrator–comb yields higher-order moving average
Higher-order CIC structures are obtained by cascading N identical simple moving average filters, then rearranging the sections to place all integrators first (decimator) or combs first (interpolator). Such rearrangement is possible because both the combs, the integrators, and the entire structure are linear time-invariant (LTI) systems.

In the interpolating CIC, its upsampler (which normally precedes an interpolation filter) is passed through the comb sections using a Noble identity, reducing the number of delay elements needed by a factor of R. Similarly, in the decimating CIC, its downsampler (which normally follows a decimation filter) is moved before the comb sections.


Features
CIC filters have some appealing features:

  • Linear phase response (i.e. constant group delay).
  • Utilize only delay, addition, and subtraction.
    • No expensive multiplication.
  • Bit growth of due to equivalence with moving average.
  • Shape of the filter's main lobe changes very little when the decimation ratio is changed.


Pole-zero plot
In the z-domain, each integrator contributes one pole at (z{=}1) and one zero at the origin (z{=}0). Each comb contributes RM poles at the origin and RM zeroes that are equally-spaced along the z-domain's . CIC filters are implemented with fixed-point arithmetic without any to ensure exact cancellation of each comb's zero at DC with each integrator's pole at DC and exact cancellation of one of each comb's pole at the origin with each integrator's zero at the origin, leaving only RM{-}1 poles at the origin per integrator-comb pair. So with RM{=}8 for example, the 1-order pole-zero plot (Figure 2) only has 7 poles in the origin and 7 zeros along the unit circle, not 8. N-order CIC filters will have N times as many poles and zeros in the same locations as the 1-order.


Frequency response
Evaluating H(z) at z{=}e^{j \, 2 \pi f / R} provides its frequency response H(f):
H(f) = \biggl(\frac{ \sin(\pi M f) }{ \sin(\tfrac{ \pi f }{ R }) }\biggr)^{N}
where f is frequency relative to the low sampling rate \tfrac{f_s}{R} and has corresponding angular frequency Plotting the magnitude of this frequency response (Figure 3) shows it is a crude which looks like a series of successively smaller and smaller "lobes" with soft peaks separated by valleys which null each zero at multiples of f{=}1/M. At large R, the response approximates the following sinc-in-frequency frequency response over a low frequency range:
H(f) \approx \biggl( R M \frac{ \sin(\pi M f) }{ \pi M f }\biggr)^{N} \text{ for } 0 \leq f < \frac{1}{M} \, .
Typically the gain is normalized by dividing by (RM)^N, so the DC peak has unity gain. N-order CIC filters are called sinc filters and their frequency response corresponds to multiplying the 1-order's shape on itself N times, resulting in successively greater attenuation. The first sidelobe's peak is approximately .

Sinc filters are commonly used with delta-sigma modulation ADCs just prior to downsampling to the desired output data rate (ODR) of \tfrac{f_s}{R}. A sinc filter's frequency response will lie under a envelope, so higher orders have steeper roll off for cutting out more high frequency noise, but will also have a lower . Another tradeoff is that a sinc filter's will be , so higher order filters cost additional latency.

The CIC filter's possible range of responses is limited by this shape. Larger amounts of rejection can be achieved by increasing the order, but that increases attenuation in the passband and requires increased bit width for the integrator and comb sections. For this reason, many real-world filtering requirements cannot be met by a CIC filter alone.


Shape compensation
A short to moderate length FIR or infinite impulse response (IIR) filter can compensate for the falling slope of a CIC filter's shape. Multiple interpolation and decimation rates can reuse the same set of compensation FIR coefficients, since the shape of the CIC's main lobe changes very little when the decimation ratio is changed.


Comparison with other FIR filters
  • CIC filters are used primarily in multi-rate processing. Meanwhile, in general are used in a wide array of applications, and can be used in multi-rate processing in conjunction with an interpolator or decimator.
  • CIC filters have low pass frequency characteristics, while FIR filters can have tailor-made frequency responses, which may include , , or characteristics.
  • CIC filters use only addition and subtraction. FIR filters use addition, subtraction, but most FIR filters also require multiplication.
  • CIC filters have a specific frequency , while low pass FIR filters can have tailor-made roll-off that isn't infinitely steep.
  • CIC filters are in general much more economical than general FIR filters, but tradeoffs are involved.
    • In cases where only a small amount of interpolation or decimation are needed, FIR filters generally have the advantage. However, when rates change by a factor of 10 or more, achieving a useful FIR filter anti-aliasing stop band requires many FIR taps.
    • For large rate changes, a CIC has a significant advantage over a FIR filter with respect to architectural and computational efficiency.
    • Additionally, CIC filters can typically be reconfigured for different rates by changing nothing more than the decimation/interpolation section assuming the bit width of the integrators and comb sections meets certain mathematical criteria based on the maximum possible rate change.
  • CIC filter uses only fixed point math, while FIR filters can use fixed or math.
    • This is necessary because, as a recursively implemented FIR filter, a CIC filter relies on exact cancellation of poles from the integrator sections by zeros from the comb sections. While the reasons are less than intuitive, an inherent characteristic of the CIC architecture is that if fixed bit length overflows occur in the integrators, they are corrected in the comb sections.


Notes


See also
  • Decimation
  • Delta-sigma modulation - ADC technique that may use CIC for decimation


External links

Page 1 of 1
1
Page 1 of 1
1

Account

Social:
Pages:  ..   .. 
Items:  .. 

Navigation

General: Atom Feed Atom Feed  .. 
Help:  ..   .. 
Category:  ..   .. 
Media:  ..   .. 
Posts:  ..   ..   .. 

Statistics

Page:  .. 
Summary:  .. 
1 Tags
10/10 Page Rank
5 Page Refs
1s Time